package com.edu.study.base.lmsOrderItem.domain;

import java.math.BigDecimal;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import com.edu.study.base.lmsOrder.domain.LmsOrder;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * LmsOrderItem对象 lms_order_item
 * 
 * @author zw
 * @date 2021-08-11
 */
@ApiModel("订单详情")
public class LmsOrderItem extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private Long id;

    /** 订单id */
    @Excel(name = "订单id")
    @ApiModelProperty(value="订单id")
    private String orderId;

    /** 订单编号 */
    @Excel(name = "订单编号")
    @ApiModelProperty(value="订单编号")
    private String orderSn;

    /** 产品ID */
    @Excel(name = "产品ID")
    @ApiModelProperty(value="产品ID")
    private String productId;

    /** 产品名称 */
    @Excel(name = "产品名称")
    @ApiModelProperty(value="产品名称")
    private String productName;

    /** 产品图片 */
    @Excel(name = "产品图片")
    @ApiModelProperty(value="产品图片")
    private String productPic;

    /** 品牌 */
    @Excel(name = "品牌")
    @ApiModelProperty(value="品牌")
    private String productBrand;

    /** 产品编号 */
    @Excel(name = "产品编号")
    @ApiModelProperty(value="产品编号")
    private String productSn;

    /** 销售价格 */
    @Excel(name = "销售价格")
    @ApiModelProperty(value="销售价格")
    private BigDecimal productPrice;

    /** 购买数量 */
    @Excel(name = "购买数量")
    @ApiModelProperty(value="购买数量")
    private Long productQuantity;

    /** 商品sku编号 */
    @Excel(name = "商品sku编号")
    private Long productSkuId;

    /** 商品sku条码 */
    @Excel(name = "商品sku条码")
    private String productSkuCode;

    /** 商品分类id */
    
    @Excel(name = "商品分类id")
    @ApiModelProperty(value="商品分类id")
    private String productCategoryId;

    /** 商品销售属性:[{"key":"颜色","value":"颜色"},{"key":"容量","value":"4G"}] */
    @Excel(name = "商品销售属性")
    private String productAttr;

    /** 商品的销售属性 */
    @Excel(name = "商品的销售属性")
    private String sp1;

    /** sp2 */
    @Excel(name = "sp2")
    private String sp2;

    /** sp3 */
    @Excel(name = "sp3")
    private String sp3;

    /** 商品促销名称 */
    @Excel(name = "商品促销名称")
    @ApiModelProperty(value="商品促销名称")
    private String promotionName;

    /** 商品促销分解金额 */
    @Excel(name = "商品促销分解金额")
    @ApiModelProperty(value="商品促销分解金额")
    private BigDecimal promotionAmount;

    /** 优惠券优惠分解金额 */
    @Excel(name = "优惠券优惠分解金额")
    @ApiModelProperty(value="优惠券优惠分解金额")
    private BigDecimal couponAmount;

    /** 积分优惠分解金额 */
    @Excel(name = "积分优惠分解金额")
    @ApiModelProperty(value="积分优惠分解金额")
    private BigDecimal integrationAmount;

    /** 该商品经过优惠后的分解金额 */
    @Excel(name = "该商品经过优惠后的分解金额")
    @ApiModelProperty(value="该商品经过优惠后的分解金额")
    private BigDecimal realAmount;

    /** 产品赠送积分 */
    @Excel(name = "产品赠送积分")
    @ApiModelProperty(value="产品赠送积分")
    private Long giftIntegration;

    /** gift_growth */
    @Excel(name = "gift_growth")
    private Long giftGrowth;

    /** status */
    @Excel(name = "status")
    private Integer status;

    /** type */
    @Excel(name = "type")
    private Integer type;
    
    private LmsOrder lmsrder;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setOrderId(String orderId) 
    {
        this.orderId = orderId;
    }

    public String getOrderId() 
    {
        return orderId;
    }
    public void setOrderSn(String orderSn) 
    {
        this.orderSn = orderSn;
    }

    public String getOrderSn() 
    {
        return orderSn;
    }
    public void setProductId(String productId) 
    {
        this.productId = productId;
    }

    public String getProductId() 
    {
        return productId;
    }
    public void setProductName(String productName) 
    {
        this.productName = productName;
    }

    public String getProductName() 
    {
        return productName;
    }
    public void setProductPic(String productPic) 
    {
        this.productPic = productPic;
    }

    public String getProductPic() 
    {
        return productPic;
    }
    public void setProductBrand(String productBrand) 
    {
        this.productBrand = productBrand;
    }

    public String getProductBrand() 
    {
        return productBrand;
    }
    public void setProductSn(String productSn) 
    {
        this.productSn = productSn;
    }

    public String getProductSn() 
    {
        return productSn;
    }
    public void setProductPrice(BigDecimal productPrice) 
    {
        this.productPrice = productPrice;
    }

    public BigDecimal getProductPrice() 
    {
        return productPrice;
    }
    public void setProductQuantity(Long productQuantity) 
    {
        this.productQuantity = productQuantity;
    }

    public Long getProductQuantity() 
    {
        return productQuantity;
    }
    public void setProductSkuId(Long productSkuId) 
    {
        this.productSkuId = productSkuId;
    }

    public Long getProductSkuId() 
    {
        return productSkuId;
    }
    public void setProductSkuCode(String productSkuCode) 
    {
        this.productSkuCode = productSkuCode;
    }

    public String getProductSkuCode() 
    {
        return productSkuCode;
    }
    public void setProductCategoryId(String productCategoryId) 
    {
        this.productCategoryId = productCategoryId;
    }

    public String getProductCategoryId() 
    {
        return productCategoryId;
    }
    public void setProductAttr(String productAttr) 
    {
        this.productAttr = productAttr;
    }

    public String getProductAttr() 
    {
        return productAttr;
    }
    public void setSp1(String sp1) 
    {
        this.sp1 = sp1;
    }

    public String getSp1() 
    {
        return sp1;
    }
    public void setSp2(String sp2) 
    {
        this.sp2 = sp2;
    }

    public String getSp2() 
    {
        return sp2;
    }
    public void setSp3(String sp3) 
    {
        this.sp3 = sp3;
    }

    public String getSp3() 
    {
        return sp3;
    }
    public void setPromotionName(String promotionName) 
    {
        this.promotionName = promotionName;
    }

    public String getPromotionName() 
    {
        return promotionName;
    }
    public void setPromotionAmount(BigDecimal promotionAmount) 
    {
        this.promotionAmount = promotionAmount;
    }

    public BigDecimal getPromotionAmount() 
    {
        return promotionAmount;
    }
    public void setCouponAmount(BigDecimal couponAmount) 
    {
        this.couponAmount = couponAmount;
    }

    public BigDecimal getCouponAmount() 
    {
        return couponAmount;
    }
    public void setIntegrationAmount(BigDecimal integrationAmount) 
    {
        this.integrationAmount = integrationAmount;
    }

    public BigDecimal getIntegrationAmount() 
    {
        return integrationAmount;
    }
    public void setRealAmount(BigDecimal realAmount) 
    {
        this.realAmount = realAmount;
    }

    public BigDecimal getRealAmount() 
    {
        return realAmount;
    }
    public void setGiftIntegration(Long giftIntegration) 
    {
        this.giftIntegration = giftIntegration;
    }

    public Long getGiftIntegration() 
    {
        return giftIntegration;
    }
    public void setGiftGrowth(Long giftGrowth) 
    {
        this.giftGrowth = giftGrowth;
    }

    public Long getGiftGrowth() 
    {
        return giftGrowth;
    }
    public void setStatus(Integer status) 
    {
        this.status = status;
    }

    public Integer getStatus() 
    {
        return status;
    }
    public void setType(Integer type) 
    {
        this.type = type;
    }

    public Integer getType() 
    {
        return type;
    }
    
    

    public LmsOrder getLmsrder() {
		return lmsrder;
	}

	public void setLmsrder(LmsOrder lmsrder) {
		this.lmsrder = lmsrder;
	}

	@Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("orderId", getOrderId())
            .append("orderSn", getOrderSn())
            .append("productId", getProductId())
            .append("productName", getProductName())
            .append("productPic", getProductPic())
            .append("productBrand", getProductBrand())
            .append("productSn", getProductSn())
            .append("productPrice", getProductPrice())
            .append("productQuantity", getProductQuantity())
            .append("productSkuId", getProductSkuId())
            .append("productSkuCode", getProductSkuCode())
            .append("productCategoryId", getProductCategoryId())
            .append("productAttr", getProductAttr())
            .append("sp1", getSp1())
            .append("sp2", getSp2())
            .append("sp3", getSp3())
            .append("promotionName", getPromotionName())
            .append("promotionAmount", getPromotionAmount())
            .append("couponAmount", getCouponAmount())
            .append("integrationAmount", getIntegrationAmount())
            .append("realAmount", getRealAmount())
            .append("giftIntegration", getGiftIntegration())
            .append("giftGrowth", getGiftGrowth())
            .append("status", getStatus())
            .append("type", getType())
            .toString();
    }
}
